<?php
	namespace Common\Api;
	class ConfigApi {
		/**
		 * 获取数据库中的配置列表
		 * @return array 配置数组
		 */
		public static function lists(){
			$map=array('status' => 1);
			$data=M('Config')->where($where)->field('type,name,value')->select();

			$config = array();
			if($data && is_array($data)){
				foreach($data as $value){
					$config[$value['name']]= self::parse($value['type'], $value['value']);
				}
			}
			return $config;
		}
		/**
		 * 根据配置类型解析配置
		 * @param  integer $type  配置类型
		 * @param  string  $value 配置值
		 */
		 private static function parse($type, $value){
			switch ($type) {
            case 3: //解析数组
                $array = preg_split('/[,;\r\n]+/', trim($value, ",;\r\n"));
                if(strpos($value,':')){
                    $value  = array();
                    foreach ($array as $val) {
                        list($k, $v) = explode(':', $val);
                        $value[$k]   = $v;
                    }
                }else{
                    $value =    $array;
                }
                break;
			}
			return $value;
		 }
	}
?>